袁来如此的工作笔记
袁来如此的工作笔记
竹杖芒鞋轻胜马,谁怕? 一蓑烟雨任平生。

用openssl_encrypt替换mcrypt_encrypt

浏览量:165

what:

PHP升级至7.2.5,之前使用了mcrypt_encrypt和mcrypt_decrypt函数,出现错误:Call to undefined function mcrypt_decrypt()



why:



最新php已经用openssl代替mcrypt,所以可以使用openssl来加解密,或者手动安装mcrypt扩展







how:

原来的加密密钥32位,IV是16位

mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $str, MCRYPT_MODE_CBC, $iv);

mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $str, MCRYPT_MODE_CBC, $iv);

变更后为:

openssl_encrypt($str, 'aes-256-cbc', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING, $iv);

openssl_decrypt($str, 'aes-256-cbc', $key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING, $iv);


打赏